package com.huawei.xme.ch02.t14.teacher.task01opt;


import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

/**
 * @author 黄后林
 * @date 2022-10-26 16:41:29
 * @note 程序员是用代码喂出来的
 */
public class Task01Opt {

    public static void main(String[] args) {

        char[] array={'3','1','4','7','2','1','1','2','9'};


        Data data = xx(array);
        System.out.println(data);

    }

    public static Data xx(char[]  listChar){

        Data data = new Data();

        // 1、找到最大的次数  3
        List<Data> list = new ArrayList<>();
        for(int outer =0 ;outer<listChar.length;outer++){
            char outerC = listChar[outer];
            int counter =0;
            for(int inner =0; inner<listChar.length;inner++){
                char innerC = listChar[inner];
                if(outerC == innerC){
                    counter = counter+1;
                    System.out.println(counter);
                }
            }

            // 不管什么情况都加  现在要判断  如果以前已经加了  就不要
            int num =1;
            for( Data d :list){
                if(d.getCh() == outerC){
                    // 说明已经加过
                    num = num+1;
                    break;
                }
            }

            if(num== 1){
                // 没有加的情况才加
                Data tmp = new Data();
                tmp.setCh(outerC);
                tmp.setCounter(counter);
                list.add(tmp);
            }

        }

        System.out.println(list);

        // 2 找 最大值 max
        int max =-1;

        for(int  index = 0 ;index<list.size();index++){

            Data da = list.get(index);
            int counter =da.getCounter();
            if(counter>max){
                max =counter;
            }
        }
        System.out.println(max);
        // 3 如果等于max直接返回
        for(int  index = 0 ;index<list.size();index++){
            Data daa = list.get(index);
            int c1 = daa.getCounter();
            if(c1==max){
                return  daa;
            }
        }
            return data;
    }
}
